nethackfandomcom-20200214-history
Source:NetHack 3.3.0/winprocs.h
Below is the full text to winprocs.h from the source code of NetHack 3.3.0. To link to a particular line, write [[NetHack 3.3.0/winprocs.h#line123]], for example. Warning! This is the source code from an old release. For the latest release, see Source code 1. /* SCCS Id: @(#)winprocs.h 3.3 96/02/18 */ 2. /* Copyright © David Cohrs, 1992 */ 3. /* NetHack may be freely redistributed. See license for details. */ 4. 5. #ifndef WINPROCS_H 6. #define WINPROCS_H 7. 8. struct window_procs { 9. const char *name; 10. void FDECL((*win_init_nhwindows), (int *, char **)); 11. void NDECL((*win_player_selection)); 12. void NDECL((*win_askname)); 13. void NDECL((*win_get_nh_event)) ; 14. void FDECL((*win_exit_nhwindows), (const char *)); 15. void FDECL((*win_suspend_nhwindows), (const char *)); 16. void NDECL((*win_resume_nhwindows)); 17. winid FDECL((*win_create_nhwindow), (int)); 18. void FDECL((*win_clear_nhwindow), (winid)); 19. void FDECL((*win_display_nhwindow), (winid, BOOLEAN_P)); 20. void FDECL((*win_destroy_nhwindow), (winid)); 21. void FDECL((*win_curs), (winid,int,int)); 22. void FDECL((*win_putstr), (winid, int, const char *)); 23. void FDECL((*win_display_file), (const char *, BOOLEAN_P)); 24. void FDECL((*win_start_menu), (winid)); 25. void FDECL((*win_add_menu), (winid,int,const ANY_P *, 26. CHAR_P,CHAR_P,int,const char *, BOOLEAN_P)); 27. void FDECL((*win_end_menu), (winid, const char *)); 28. int FDECL((*win_select_menu), (winid, int, MENU_ITEM_P **)); 29. char FDECL((*win_message_menu), (CHAR_P,int,const char *)); 30. void NDECL((*win_update_inventory)); 31. void NDECL((*win_mark_synch)); 32. void NDECL((*win_wait_synch)); 33. #ifdef CLIPPING 34. void FDECL((*win_cliparound), (int, int)); 35. #endif 36. #ifdef POSITIONBAR 37. void FDECL((*win_update_positionbar), (char *)); 38. #endif 39. void FDECL((*win_print_glyph), (winid,XCHAR_P,XCHAR_P,int)); 40. void FDECL((*win_raw_print), (const char *)); 41. void FDECL((*win_raw_print_bold), (const char *)); 42. int NDECL((*win_nhgetch)); 43. int FDECL((*win_nh_poskey), (int *, int *, int *)); 44. void NDECL((*win_nhbell)); 45. int NDECL((*win_doprev_message)); 46. char FDECL((*win_yn_function), (const char *, const char *, CHAR_P)); 47. void FDECL((*win_getlin), (const char *,char *)); 48. int NDECL((*win_get_ext_cmd)); 49. void FDECL((*win_number_pad), (int)); 50. void NDECL((*win_delay_output)); 51. #ifdef CHANGE_COLOR 52. void FDECL((*win_change_color), (int,long,int)); 53. #ifdef MAC 54. void FDECL((*win_change_background), (int)); 55. short FDECL((*win_set_font_name), (winid, char *)); 56. #endif 57. char * NDECL((*win_get_color_string)); 58. #endif 59. 60. /* other defs that really should go away (they're tty specific) */ 61. void NDECL((*win_start_screen)); 62. void NDECL((*win_end_screen)); 63. 64. void FDECL((*win_outrip), (winid,int)); 65. }; 66. 67. extern NEARDATA struct window_procs windowprocs; 68. 69. /* 70. * If you wish to only support one window system and not use procedure 71. * pointers, add the appropriate #ifdef below. 72. */ 73. 74. #define init_nhwindows (*windowprocs.win_init_nhwindows) 75. #define player_selection (*windowprocs.win_player_selection) 76. #define askname (*windowprocs.win_askname) 77. #define get_nh_event (*windowprocs.win_get_nh_event) 78. #define exit_nhwindows (*windowprocs.win_exit_nhwindows) 79. #define suspend_nhwindows (*windowprocs.win_suspend_nhwindows) 80. #define resume_nhwindows (*windowprocs.win_resume_nhwindows) 81. #define create_nhwindow (*windowprocs.win_create_nhwindow) 82. #define clear_nhwindow (*windowprocs.win_clear_nhwindow) 83. #define display_nhwindow (*windowprocs.win_display_nhwindow) 84. #define destroy_nhwindow (*windowprocs.win_destroy_nhwindow) 85. #define curs (*windowprocs.win_curs) 86. #define putstr (*windowprocs.win_putstr) 87. #define display_file (*windowprocs.win_display_file) 88. #define start_menu (*windowprocs.win_start_menu) 89. #define add_menu (*windowprocs.win_add_menu) 90. #define end_menu (*windowprocs.win_end_menu) 91. #define select_menu (*windowprocs.win_select_menu) 92. #define message_menu (*windowprocs.win_message_menu) 93. #define update_inventory (*windowprocs.win_update_inventory) 94. #define mark_synch (*windowprocs.win_mark_synch) 95. #define wait_synch (*windowprocs.win_wait_synch) 96. #ifdef CLIPPING 97. #define cliparound (*windowprocs.win_cliparound) 98. #endif 99. #ifdef POSITIONBAR 100. #define update_positionbar (*windowprocs.win_update_positionbar) 101. #endif 102. #define print_glyph (*windowprocs.win_print_glyph) 103. #define raw_print (*windowprocs.win_raw_print) 104. #define raw_print_bold (*windowprocs.win_raw_print_bold) 105. #define nhgetch (*windowprocs.win_nhgetch) 106. #define nh_poskey (*windowprocs.win_nh_poskey) 107. #define nhbell (*windowprocs.win_nhbell) 108. #define nh_doprev_message (*windowprocs.win_doprev_message) 109. #define yn_function (*windowprocs.win_yn_function) 110. #define getlin (*windowprocs.win_getlin) 111. #define get_ext_cmd (*windowprocs.win_get_ext_cmd) 112. #define number_pad (*windowprocs.win_number_pad) 113. #define delay_output (*windowprocs.win_delay_output) 114. #ifdef CHANGE_COLOR 115. #define change_color (*windowprocs.win_change_color) 116. #ifdef MAC 117. #define change_background (*windowprocs.win_change_background) 118. #define set_font_name (*windowprocs.win_set_font_name) 119. #endif 120. #define get_color_string (*windowprocs.win_get_color_string) 121. #endif 122. 123. /* other defs that really should go away (they're tty specific) */ 124. #define start_screen (*windowprocs.win_start_screen) 125. #define end_screen (*windowprocs.win_end_screen) 126. 127. #define outrip (*windowprocs.win_outrip) 128. #endif winprocs.h